The present invention relates to a system and a method for handling a dependency between two product segments of a process modeling a production system within a manufacturing execution system.
In the world of process, automation and process monitoring standard automation systems for controlling the widest conceivable variety of machines and plants are state of the art. Such technology covers in particular a broad range of products which are offered by the Siemens Corp. under its SIMATIC® product family within the field of manufacturing execution systems (MES). An extensive line of products for solving the technical tasks in question such as counting, measuring, positioning, motion control, closed-loop control and cam control enhance the performance capabilities of appropriate process controllers. A variety of configurations enable the implementation of flexible machine concepts.
In this context, a broad range of IT solutions exists to connect the actual hardware close to the technical and/or logistical process to the application layer of the client driving the installation. Manufacturing execution systems have therefore been developed to meet the requirements of a service oriented architecture (SOA) to integrate seamlessly into a totally integrated automation (TIA). A plug & play architecture, in which individual functions can be combined and configured with each other thereby forms the basis for this success thereby simplifying the complex structures of controlling a manufacturing plant or the like.
These demands often require in the backbone rather complicated and sophisticated software solutions which enable the approach of totally integrated automation. In view of this, the software engineers very often use production moduler to define the plant model and its standard operating procedures and create the respective new software by means of a high level graphical language which identifies the workflow of activities within the software. Subsequently, this string/term of high level graphical language is translated into a client based software language executable on the machine language level. This translation requires tremendous efforts in programming and need serious testing to check whether the translated program behaves the same as the original string/term of the high level graphical language.
For modeling the production system it is required to divide the productive process in many steps (hereinafter called product segments) so that each of the product segments represents a simple action that can be controlled by the MES system. This subdivision must take care of all dependencies existing between the product segments in order to guarantee that the entire production will be executed in the correct way. The most common dependency managed by MES systems and coded in international standard ANSI/ISA/95 represents the management of the timing relations between product segments. This type of dependency is used to define the temporal sequence of the execution of the single product segments. This dependency is modeled as typed link between the two product segments. The link type defines the type of dependency and an optional value can be used to add additional details or restraints (e.g. product segment A must start no later than 2 minutes after product segment B is started).
In the real environment, another type of dependency exists which represents the demand to use a specific production resource for the execution of a product segment depending on a resource that has been chosen for use within another product segment. Considering the equipment resources, it is often necessary to model the constraint that two or more product segments must use the same equipment. Another frequent case describes the need to model the requirement for a product segment to use an equipment which is physically connected to an equipment in use in another product segment.
So far, this type of constraints is modeled individually using custom attributes of the respective product segments. According to this procedures, an engineer has to identify the involved product segments and to chose an adequate custom attribute to represent this constraint. Later on, a manufacturing execution system does not use these constraints; again, the engineer must implement a custom procedure to check the dependencies influencing the normal process execution in order to assure that the production is performed correctly.
Unfortunately, this procedure causes the process to have an internal interface for the hand-over of the data stemming from the identification step into the implementation step. Beside a certain risk for failures, either by data transfer or data interpretation errors, this procedure does not render the system into a fully automated system, but the engineers have to handle this step individually by hand (of course, they use computers, but the intelligent work has to be done by both of them personally).